Force feedback devices originated in various specialized ways in the 1960s with teleoperations. Most of these devices were "replica" devices, wherein a smaller controlling or master robot was moved by an operator to control movement of a larger slaved robot. Forces detected at the slave were then also fed back to the operator through the master robot's actuators. Such prior art is substantially described in U.S. Pat. No. 5,389,865 to Jacobus et al.
In the late 1980s, NASA funded several experiments using force feedback devices which were not configured as having identical versions of a slave device. This was important at the time because an astronaut may want to control a number of kinds of space-based robots and cranes from one "universal" controller. To make this universal controller concept work, the master controller was connected logically to the slave through a network of computers which were capable of translating the master kinematics typically into Cartesian coordinates and from Cartesian to slave kinematics and back the other way.
Once this computer controller is in place on the master side of the system, it becomes possible to send inputs from the master (joystick, wheel, yoke, etc.) to a simulated slave rather than a real one, and to accept forces from the simulation for application to the master as well. This is one innovation described in U.S. Pat. Nos. 5,389,865 and 5,459,382 to Jacobus et al. As disclosed by Jacobus, this simulation need not be a real device, like a crane or robot, but may be a simulated automobile, boat, plane, or weapon. It can even be a simulation of a person performing tasks in a virtual world, such as walking, handling things, touching surfaces.
U.S. Pat. Nos. 5,459,382 and 5,389,865 describe an early device and method for providing users with a touch or tactile interface into a virtual world which allows the user to touch virtual objects, or objects which are not real, but rather are described by a model which resides inside a computer system. U.S. Pat. No. 5,389,865 and 5,629,594, and U.S. application Ser. No. 08/845,375 elaborate on these devices and the software architecture responsible for expressing abstract virtual models in the computer as forces created based on the position of the devices. U.S. application Ser. No. 08/861,080 describes in detail how a software architecture represents abstract virtual objects in terms of superpositions of virtual geometrical entities and dynamic special "feel" effects. U.S. application Ser. No. 08/859,877 describes how virtual objects and geometrical entities are built using CAD/CAM and geometrical design methods. U.S. application Ser. No. 08/859,157 describes how touch or haptic attributes are parameterized and represented using graphical user interface elements. All of the patents and applications discussed above are set forth herein in their entirety by reference.